Use of streaming media technology (e.g. video over Internet Protocol (IP) and voice over IP) is growing across all market segments, inclusive of consumer, enterprise, and public safety. Today, such media is commonly transported over wired or fixed wireless networks. However, advances in wireless broadband technology are enabling such media to also be streamed over next generation wireless broadband networks.
Wireless networks are generally bandwidth limited with respect to the demand for use of these networks. Contention for wireless resources, coupled with the physics of mobile wireless (e.g. signal strength, fading) typically cause great fluctuations in available bandwidth between any two devices communicating over the network. When bandwidth demands of an application within a source device exceed instantaneous bandwidth available on the network, packet loss occurs.
This is an important consideration, as the packet loss pattern inflicted on streaming media, such as video, has ramifications on the quality of the media when it is reproduced at a destination device. Modern video codecs employ two basic techniques for encoding source video, spatial image compression and temporal motion compensation. In either case, the source video is first divided into a sequence of frames each having a mesh of macroblocks. When all of the macroblocks within a frame are encoded using spatial image compression techniques, the frame is called an Intra or “I” frame, wherein the decoding of the frame does not depend upon the successful decoding of one or more previous frames. When some or all of the macroblocks within a frame are encoded using temporal motion compensation techniques, the frame is called a Predictive, Inter, or “P” frame, wherein the decoding of the frame depends upon the successful decode of one or more previous frames. Examples of encoding algorithms include, but are not limited to, standard video compression technologies like MPEG-2, MPEG-4, H.263, VC-1, VP8, H.264, etc.
Modern video codecs achieve their incredible compression ratios largely through predictive encoding. However, the drawback is that packet loss (and the accompanying loss of spatial and/or motion data) within video frames upon which future frames are predicted causes a propagation of spatial errors or deformities, in time, until that spatial area is refreshed in a non-predictive manner via the next Intra frame in the sequence. Therefore, to limit error propagation, Intra frames are injected into the video stream at regular intervals (e.g. every 1 or 2 seconds). A sequence of one Intra frame followed by a succession of Predictive frames is called a Group of Pictures, or GOP. Assuming, for example, a GOP length of 30 frames and a simplistic frame slicing methodology (e.g., two to four packets per frame), the loss of a packet in frame four will cause subsequent deformities in the corresponding spatial areas of the remaining 26 frames, thereby, having a dramatic effect on the decoded video quality at a destination device until that spatial area is refreshed by the Intra frame at the start of the next GOP.
As noted above, some amount of packet loss is unavoidable due to the constrained nature of wireless networks. Furthermore, uncontrolled packet loss can lead to significantly degraded media quality.
Thus, there exists a need for a mechanism to control which video packets are discarded by a wireless network, thereby, providing unequal packet loss protection in such a way as to optimize decoded media quality.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help improve understanding of various embodiments. In addition, the description and drawings do not necessarily require the order illustrated. It will be further appreciated that certain actions and/or steps may be described or depicted in a particular order of occurrence while those skilled in the art will understand that such specificity with respect to sequence is not actually required. Apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the various embodiments so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein. Thus, it will be appreciated that for simplicity and clarity of illustration, common and well-understood elements that are useful or necessary in a commercially feasible embodiment may not be depicted in order to facilitate a less obstructed view of these various embodiments.